package br.unesp.rc.locadora.beans;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.GeneratedValue;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.OneToMany;
import javax.persistence.OneToOne;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.CascadeType;
import java.util.List;

@Entity
@Table(name="Fatura")
public class Fatura{
	
	private long idFatura;
	private float total;
	private String formaPagamento;
	private int numeroParcelas;
	private List<ItemFatura> itensFatura;
	private Locacao locacao;
	
	@Id
	@GeneratedValue
	@Column(name="idFatura")
	public long getIdFatura(){
		return idFatura;
	}
	
	public void setIdFatura(long idFatura){
		this.idFatura = idFatura;
	}
	
	@Column(name="total")
	public float getTotal(){
		return total;
	}
	
	public void setTotal(float total){
		this.total = total;
	}
	
	@Column(name="formaPagamento")
	public String getFormaPagamento(){
		return formaPagamento;
	}
	
	public void setFormaPagamento(String formaPagamento){
		this.formaPagamento = formaPagamento;
	}
	
	@Column(name="numeroParcelas")
	public int getNumeroParcelas(){
		return numeroParcelas;
	}
	
	public void setNumeroParcelas(int numeroParcelas){
		this.numeroParcelas = numeroParcelas;
	}
	
	@OneToMany(mappedBy="fatura")
	public List<ItemFatura> getItensFatura(){
		return itensFatura;
	}
	
	public void setItensFatura(List<ItemFatura> itensFatura){
		this.itensFatura = itensFatura;
	}
	
	@OneToOne
	@PrimaryKeyJoinColumn
	public Locacao getLocacao(){
		return locacao;
	}
	
	public void setLocacao(Locacao locacao){
		this.locacao = locacao;
	}
	
}
